package huanzhao.erp.domain.vo;

import com.fasterxml.jackson.annotation.JsonInclude;
import huanzhao.erp.domain.types.TaskState;
import huanzhao.erp.domain.types.TaskType;
import lombok.Data;

import java.util.Date;

@Data
public class TaskVO {
    private Long id;

    /**
     * 任务时限，单位：秒，为空时表示没有时限
     */
    private Long limit;

    /**
     * 任务类型
     */
    private TaskType type;

    /**
     * 任务开始时间
     */
    private Date createTime;

    /**
     * 任务完成时间
     */
    private Date completeTime;

    /**
     * 是否超时
     */
    private Boolean overtime;

    /**
     * 是否为售后任务
     */
    private Boolean afterSale;

    /**
     * 任务状态
     */
    private TaskState state;

    /**
     * 任务备注
     */
    private String comment;

    /**
     * 是否拒收
     */
    private Boolean reject;

    /**
     * 拒收原因
     */
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String rejectReason;

    @JsonInclude(JsonInclude.Include.NON_NULL)
    private PhoneVO phone;

    /**
     * 任务执行人
     */
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private StaffVO staff;

    /**
     * 任务所属渠道
     */
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private TeamVO team;
}